//
//  inlineFunc.cpp
//  learnC++
//
//  Created by apple on 2018/5/31.
//  Copyright © 2018年 yunfan.com. All rights reserved.
//

#include "inlineFunc.hpp"
//函数的一个主要缺点是每次调用一个函数时都会产生一定的性能开销。这是因为CPU必须存储正在执行的当前指令的地址（所以它知道以后要返回到哪里）以及其他寄存器，必须创建所有的函数参数并赋值，并且程序必须分支到新的位置。就地编写的代码明显更快。
inline int min(int x, int y)
{
    return x > y ? y : x;
}

void test_inline_func(){
    
    std::cout << min(5, 6) << '\n';
    std::cout << min(3, 2) << '\n';
    
    //使用内联函数会被编译器改成下面这样
//    std::cout << (5 > 6 ? 6 : 5) << '\n';
//    std::cout << (3 > 2 ? 2 : 3) << '\n';
    
}



